A lithographic apparatus is a machine that applies a desired pattern onto a substrate, usually onto a target portion of the substrate. A lithographic apparatus can be used, for example, in the manufacture of integrated circuits (ICs). In such a case, a patterning device, which is alternatively referred to as a mask or a reticle, may be used to generate a circuit pattern to be formed on an individual layer of the IC. This pattern can be transferred onto a target portion (e.g. including part of, one, or several dies) on a substrate (e.g. a silicon wafer). Transfer of the pattern is typically via imaging onto a layer of radiation-sensitive material (resist) provided on the substrate. In general, a single substrate will contain a network of adjacent target portions that are successively patterned. Conventional lithographic apparatus include so-called steppers, in which each target portion is irradiated by exposing an entire pattern onto the target portion at once, and so-called scanners, in which each target portion is irradiated by scanning the pattern through a radiation beam in a given direction (the “scanning”-direction) while synchronously scanning the substrate parallel or anti-parallel to this direction. It is also possible to transfer the pattern from the patterning device to the substrate by imprinting the pattern onto the substrate.
In a lithographic apparatus, as well as in many other applications, real time software may be applied. The term real time software may be understood here as software which performs a task and/or provides an output in a time relation to another activity. In other words, a correctness of operation of real time software not only depends upon a logical correctness of an outcome of the software, but also upon the time at which the outcome of the software is provided. The other activity might be a physical process being related to any type of physical quantity, such as a positioning of a movable part of a lithographic apparatus or other device, or illumination by a source of radiation, an overall control system which requires data from the process at a certain moment in time, a control of any type of machine such as a lithographic apparatus, an engine, etc., any type of communication equipment such as telecommunication equipment or computer network equipment in which certain data is provided at predetermined moments in time, etc. The term software is to be understood as comprising any type of program instructions suitable to be executed by any type of processing means such as a microprocessor, microcontroller, digital signal processor, or any other type of programmable device such as a programmable integrated circuit. It is common that a processing means which is to run the software is loaded with a variety of processes or other activities. It might, for example, be the case that the processing means is in a multi-tasking environment, thus is required to perform a plurality of processes. Therefore, the processing means will in turn perform some activities for each of the processes. In general, due to various reasons, a load on the processing means may vary over time, which may cause the providing of an output of a process in question to become time critical. It might even be the case that, due to a high load on the processor such as by sudden events, additional tasks, or other reasons such as missing data in a cache memory, a command given to the process or another process to be executed by the same processing means, etc., that a time spent by the processing means on a certain process or a part of a process, may vary. Therefore, it may happen that a calculation time exceeds an expected time, which may lead to the situation that a result of (a part of) a process is available at a moment which is too late in-time. This may be undesirable as any activity with which the process interacts may be degraded in performance thereof due to such a delay.
As an example, a software process may comprise a control process, e.g. to control a servo-control loop, such as a servo control of a substrate table in a lithographic apparatus. In this example, the controlling may be performed by a software process running on a processing means. In case that, because of any reason, an output of the process is late, this may firstly affect a performance of a positioning of the substrate table, as a variety of forces which may act on the substrate table, such as forces by motors which drive the substrate table and/or a variety of disturbance forces, will continue to act on the substrate table, thus having an effect on the position, velocity, acceleration, etc. thereof. Further, a varying delay in the process may have an adverse effect on stability, dynamic performance and other characteristics of the servo loop.